Hybrid hydraulic and electrically actuated mobile robot

ABSTRACT

Example embodiments may relate to a robotic system that includes a hydraulic actuator and an electric actuator both coupled to a joint of the robotic system. Operation of the actuators may be based on various factors such as based on desired joint parameters. For instance, such desired joint parameters may include a desired output torque/force of the joint, a desired output velocity of the joint, a desired acceleration of the joint, and/or a desired joint angle, among other possibilities. Given a model of power consumption as well as a model of the actuators, the robotic system may determine operating parameters such as hydraulic and electric operating parameters as well as power system parameters, among others. The robotic system may then control operation of the actuators, using the determined operating parameters, to obtain the desired joint parameters such that power dissipation in the system is minimized (i.e., maximizing actuation efficiency).

CROSS REFERENCE TO RELATED APPLICATION

The present application claims priority to U.S. Provisional patentapplication Ser. No. 62/027,517 filed on Jul. 22, 2014 and entitled“Hybrid Hydraulic and Electrically Actuated Mobile Robot,” the entirecontents of which are herein incorporated by reference.

BACKGROUND

Unless otherwise indicated herein, the materials described in thissection are not prior art to the claims in this application and are notadmitted to be prior art by inclusion in this section.

Robotic systems may be used for applications involving materialhandling, welding, assembly, and dispensing, among others. Over time,the manner in which these robotic systems operate is becoming moreintelligent, more efficient, and more intuitive. As robotic systemsbecome increasingly prevalent in numerous aspects of modern life, theneed for efficient robotic systems becomes apparent. Therefore, a demandfor efficient robotic systems has helped open up a field of innovationin actuators, sensing techniques, as well as component design andassembly.

SUMMARY

Example embodiments may relate to a robotic system that includes ahydraulic actuator and an electric actuator. Both actuators may becoupled to the same joint of the robotic system. Alternatively, eachactuator may be coupled to a different joint of the robotic system.Operation of the actuators may be determined based on various factorssuch as the load applied at the joint, meeting a desired force/torqueprofile, required velocity of operation, experiencing shock loads,contact of a robot leg with the ground, and carrying objects, amongother possibilities. Such a hybrid hydraulic and electrically actuatedrobotic system may lead to increased efficiency, control, androbustness.

In one aspect, a system is provided. The system includes a hydraulicactuator coupled to a joint of a mobile robotic device. The system alsoincludes an electric actuator coupled to the joint of the mobile roboticdevice, where the electric actuator is configured for operation. Thesystem further includes a controller configured to operate the hydraulicactuator and the electric actuator. In particular, the controller isalso configured to determine a total output torque to be applied by thehydraulic actuator and the electric actuator and a total output velocityto be applied by the hydraulic actuator and the electric actuator. Thecontroller is additionally configured to, based at least in part on thetotal output torque and the total output velocity, determine hydraulicoperating parameters and electric operating parameters such that powerdissipation of the hydraulic actuator and power dissipation of theelectric actuator is minimized. The controller is further configure todetermine that the hydraulic operating parameters indicate activation ofthe hydraulic actuator. The controller is yet further configured to,based at least in part on determining that the hydraulic operatingparameters indicate activation of the hydraulic actuator, activate thehydraulic actuator for operation at the determined hydraulic operatingparameters while operating the electric actuator at the determinedelectric operating parameters.

In another aspect, a second system is provided. The system includes ahydraulic actuator coupled to a joint of a mobile robotic device, wherethe hydraulic actuator is configured for operation. The system alsoincludes an electric actuator coupled to the joint of the mobile roboticdevice. The system further includes a controller. The controller isconfigured to operate the hydraulic actuator and the electric actuator.The controller is also configured to determine a total output torque tobe applied by the hydraulic actuator and the electric actuator and atotal output velocity to be applied by the hydraulic actuator and theelectric actuator. The controller is additionally configured to, basedat least in part on the total output torque and the total outputvelocity, determine hydraulic operating parameters and electricoperating parameters such that power dissipation of the hydraulicactuator and power dissipation of the electric actuator is minimized.The controller is further configured to determine that the electricoperating parameters indicate activation of the electric actuator. Thecontroller is yet further configured to, based at least in part ondetermining that the electric operating parameters indicate activationof the electric actuator, activate the electric actuator for operationat the determined electric operating parameters while operating thehydraulic actuator at the determined hydraulic operating parameters.

In yet another aspect, a method is provided. The method is operable in arobotic system that includes a hydraulic actuator and an electricactuator both coupled to a joint of the robotic system. The methodinvolves determining, by a controller, a total output torque to beapplied by the hydraulic actuator and the electric actuator and a totaloutput velocity to be applied by the hydraulic actuator and the electricactuator. The method also involves, based at least in part on the totaloutput torque and the total output velocity, determining, by thecontroller, hydraulic operating parameters and electric operatingparameters such that power dissipation of the hydraulic actuator andpower dissipation of the electric actuator is minimized. The methodadditionally involves determining, by the controller, that the hydraulicoperating parameters indicate activation of the hydraulic actuator andthat the electric operating parameters indicate activation of theelectric actuator. The method further involves, based at least in parton determining that the hydraulic operating parameters indicateactivation of the hydraulic actuator and that the electric operatingparameters indicate activation of the electric actuator, activating thehydraulic actuator for operation at the determined hydraulic operatingparameters activating the electric actuator for operation at thedetermined electric operating parameters.

In yet another aspect, a third system is provided. The system mayinclude a hydraulic actuator and an electric actuator both coupled to ajoint of the robotic system. The system may also include means fordetermining a total output torque to be applied by the hydraulicactuator and the electric actuator and a total output velocity to beapplied by the hydraulic actuator and the electric actuator. The systemmay also include means for, based at least in part on the total outputtorque and the total output velocity, determining hydraulic operatingparameters and electric operating parameters such that power dissipationof the hydraulic actuator and power dissipation of the electric actuatoris minimized. The system may also include means for determining that thehydraulic operating parameters indicate activation of the hydraulicactuator and that the electric operating parameters indicate activationof the electric actuator. The system may also include means for, basedat least in part on determining that the hydraulic operating parametersindicate activation of the hydraulic actuator and that the electricoperating parameters indicate activation of the electric actuator,activating the hydraulic actuator for operation at the determinedhydraulic operating parameters activating the electric actuator foroperation at the determined electric operating parameters.

These as well as other aspects, advantages, and alternatives will becomeapparent to those of ordinary skill in the art by reading the followingdetailed description, with reference where appropriate to theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example configuration of a robotic system,according to an example embodiment.

FIG. 2 illustrates example efficiency plots for hydraulic actuators andelectric actuators, according to an example embodiment.

FIG. 3 is an example flowchart for operating a hydraulic actuator and anelectric actuator in the robotic system, according to an exampleembodiment.

FIG. 4 is a second example flowchart for operating the hydraulicactuator and the electric actuator in the robotic system, according toan example embodiment.

FIG. 5 is a third example flowchart for operating the hydraulic actuatorand the electric actuator in the robotic system, according to an exampleembodiment.

FIG. 6 illustrates an example joint controller, according to an exampleembodiment.

FIG. 7A illustrates an example quadrupedal robot, according to anexample embodiment.

FIG. 7B illustrates a side view of the example quadrupedal robot,according to an example embodiment.

FIG. 8A illustrates the side view of the example quadrupedal robot at afirst point in time, according to an example embodiment.

FIG. 8B illustrates the side view of the example quadrupedal robot at asecond point in time, according to an example embodiment.

FIG. 9 illustrates an example desired force profile, according to anexample embodiment.

FIG. 10 illustrates a second example desired force profile, according toan example embodiment.

DETAILED DESCRIPTION

Example methods and systems are described herein. It should beunderstood that the words “example,” “exemplary,” and “illustrative” areused herein to mean “serving as an example, instance, or illustration.”Any embodiment or feature described herein as being an “example,” being“exemplary,” or being “illustrative” is not necessarily to be construedas preferred or advantageous over other embodiments or features. Theexample embodiments described herein are not meant to be limiting. Itwill be readily understood that the aspects of the present disclosure,as generally described herein, and illustrated in the figures, can bearranged, substituted, combined, separated, and designed in a widevariety of different configurations, all of which are explicitlycontemplated herein.

I. OVERVIEW

According to various embodiments, described herein are systems andmethods involving a hybrid hydraulic and electrically actuated roboticsystem, such as a mobile robot. An actuator is a mechanism that may beused to introduce mechanical motion. In robotic systems, actuators maybe configured to convert stored energy into movement of various parts ofthe robotic system. For example, in humanoid or quadrupedal robots,actuators may be responsible for movement of robotic arms, legs, hands,and head, among others.

Additionally, various mechanisms may be used to power an actuator. Forinstance, actuators may be powered by chemicals, compressed air, orelectricity, among other possibilities. Further, in some cases, anactuator may be a rotary actuator that may be used in systems involvingrotational forms of motion (e.g., a joint in a humanoid robot). However,in other cases, an actuator may be a linear actuator that may be used insystems involving straight line motion.

The disclosed robotic system may include an electric actuator and ahydraulic actuator coupled to, for example, the same joint in therobotic system. The electric actuator and the hydraulic actuator mayeach exhibit different characteristics during operation. As such, therobotic system may also include an on-board computing system configuredto control operation of each actuator in various situations in order totake advantage of the different characteristics, thereby resulting inincreased efficiency, among other possible advances.

II. EXAMPLE HYBRID HYDRAULIC AND ELECTRIC ACTUATION IN A ROBOTIC SYSTEM

Referring now to the figures, FIG. 1 shows an example configuration of arobotic system 100. The robotic system 100 may be a humanoid robot or aquadrupedal robot, among other examples. Additionally, the roboticsystem 100 may also be referred to as a mobile robotic device or robot,among others.

The robotic system 100 is shown to include processor(s) 102, datastorage 104, program instructions 106, controller 108, sensor(s) 110,power source(s) 112, hydraulic actuator 114, and electric actuator 116.Note that the robotic system 100 is shown for illustration purposes onlyas robotic system 100 may include additional components and/or have oneor more components removed without departing from the scope of theinvention. Further, note that the various components of robotic system100 may be connected in any manner.

Processor(s) 102 may be a general-purpose processor or a special purposeprocessor (e.g., digital signal processors, application specificintegrated circuits, etc.). The processor(s) 102 can be configured toexecute computer-readable program instructions 106 that are stored inthe data storage 104 and are executable to provide the functionality ofthe robotic system 100 described herein. For instance, the programinstructions 106 may be executable to provide functionality ofcontroller 108, where the controller 108 may be configured to causeactivation of and halt actuation by the hydraulic actuator 114 and theelectric actuator 116.

Note that activation of the actuators may include increasing commands(e.g., more torque), turning on an actuator, or connecting an actuatorto the system (e.g., engaging using clutch). In contrast, haltingactuation by the actuators may include decreasing commands (e.g., lesstorque), turning off an actuator (e.g., coasting), or disconnecting anactuator from the system (e.g., disengaging using clutch).

The data storage 104 may include or take the form of one or morecomputer-readable storage media that can be read or accessed byprocessor(s) 102. The one or more computer-readable storage media caninclude volatile and/or non-volatile storage components, such asoptical, magnetic, organic or other memory or disc storage, which can beintegrated in whole or in part with processor(s) 102. In someembodiments, the data storage 104 can be implemented using a singlephysical device (e.g., one optical, magnetic, organic or other memory ordisc storage unit), while in other embodiments, the data storage 104 canbe implemented using two or more physical devices. Further, in additionto the computer-readable program instructions 106, the data storage 104may include additional data such as diagnostic data, among otherpossibilities.

The robotic system 100 may include one or more sensor(s) 110 such asforce sensors, proximity sensors, motion sensors, load sensors, positionsensors, touch sensor, depth sensors, ultrasonic range sensors, andinfrared sensors, among other possibilities. The sensor(s) 110 mayprovide sensor data to the processor(s) 102 to allow for appropriateinteraction of the robotic system 100 with the environment.Additionally, the sensor data may be used in evaluation of variousfactors for activation and halting actuation of the actuators 114 and116 by controller 108 as further discussed below.

Further, the robotic system 100 may also include one or more powersource(s) 112 configured to supply power to various components of therobotic system 100. In some cases, hydraulic actuator 114 and electricactuator 116 may each connect to a different power source. In othercases, both actuators 114 and 116 may be powered by the same powersource. Any type of power source may be used such as, for example, agasoline engine or a battery. Other configurations may also be possible.

Referring now to the actuators, hydraulic actuator 114 and electricactuator 116 may take on any form and may be positioned anywhere in therobotic system 100 to cause movement of various parts of the system suchas, for example, legs and hands of a humanoid robot. While embodimentsdisclosed herein are discussed in the context of a single hydraulicactuator 114 and a single electric actuators 116, any number and typesof actuators may be used without departing from the scope of theinvention.

Hydraulic actuator 114 may include a hollow cylindrical tube in which apiston can move based on a pressure difference between two sides of thepiston. The force exerted by hydraulic actuator 114 may be dependent onthe pressure applied on a surface area of the piston. Since the surfacearea is finite, a change in pressure may result in change of forceexerted by the hydraulic actuator 114.

Changing pressure in the hydraulic actuator 114 may be done bythrottling fluid. More specifically, the fluid may enter the cylindervia an orifice and the flow of the fluid may be managed by a valve. Oncethe desired amount of fluid enters the cylinder, the valve may be closedsuch that a load may be supported by the hydraulic actuator 114 withoutusing much (or any) additional power (e.g., a mobile robot holdingposition). As such, a hydraulic actuator 114 may be particularlyadvantageous for handling higher loads as well as shock loads.

Additionally, the speed at which the hydraulic actuator 114 operates maydepend on the flow rate of the fluid. In order to operate at high speedsregardless of the required force, a larger power input may be needed.Therefore, a hydraulic actuator 114 operating at high speeds and lowforces may be inefficient. Other example configurations of the hydraulicactuator 114 may also be possible.

In contrast, electric actuator 116 may allow for efficient operation athigher speeds and inefficient operation when exerting a high force atlow speeds. In particular, electric actuator 116 may include a rotor, astator, and a shaft, among other components. The rotor may includeconductors configured to carry currents that interact with a magneticfield of the stator such that forces are generated to cause a mechanicalrotation of the shaft. However, other example configurations of theelectric actuator 116 may also be possible.

Unlike hydraulic actuator 114, in order to support a load whileoperating at low speeds (or holding position), electric actuator 116 mayneed to exert higher torque. As such, a large energy input may be neededto produce little (or no) mechanical motion, thereby leading toinefficiency in the operation of the electric actuator 116.

To further evaluate the differences between hydraulic actuator 114 andelectric actuator 116, consider FIG. 2 illustrating example efficiencyplots 200 and 202. Efficiency plot 200 illustrates how efficiency mayvary, for traditional hydraulic actuators, depending on the appliedforce as well as the speed of operation (e.g., velocity). On the otherhand, efficiency plot 202 illustrates how efficiency may vary, fortraditional electric actuators, depending on the applied torque as wellas the speed of operation (e.g., velocity).

Plots 200 and 202 illustrate efficiency using varying colors. Inparticular, as demonstrates by legends 212 and 214, darker colorsillustrate higher efficiency while lighter colors illustrate lowerefficiency. The efficiency illustrated in plots 200 and 202 may bedetermined, for example, in terms of calculation of power loss, wherehigher efficiency may relate to lower power loss as illustrated bylegends 212 and 214, and where lower efficiency may relate to higherpower loss as illustrated by legends 212 and 214. For instance, powerloss may be determined based on input power relative to output power. Incases where the output power is significantly lower than the inputpower, a high power loss is determined. As such, high power loss (e.g.,0.9 in legends 212 and 214) may indicate low efficiency while low powerloss (e.g., 0.1 in legends 212 and 214) may indicate high efficiency.Other examples of determining efficiency may also be possible.

Note that plots 200 and 202 may not be to scale. Also, note that thenumbers shown in the plots are shown for illustration purposes only andmay refer to normalized data rather than actual data (e.g., normalizedspeed rather than actual speed).

Plot 200 includes regions 204 and 206. Region 204 of plot 200illustrates the efficient region of operation in a traditional hydraulicactuator. As shown, region 204 demonstrates that hydraulic actuators maybe most efficient while operating at lower speeds regardless of theapplied force. On the other hand, region 206 of plot 200 illustrates theinefficient region of operation in a traditional hydraulic actuator. Asshown, region 206 demonstrates that hydraulic actuators may beinefficient while operating at higher speeds and applying a lower force.

In contrast, plot 202 includes regions 208 and 210. Region 208 of plot202 illustrates the efficient region of operation in a traditionalelectric actuator. As shown, region 208 demonstrates that electricactuators may be most efficient while applying lower torque regardlessof the speed of operation. On the other hand, region 210 of plot 200illustrates the inefficient region of operation in a traditionalelectric actuator. As shown, region 210 demonstrates that electricactuators may be inefficient while operating at lower speeds andapplying a higher torque. Note that the efficient operating envelope ofa traditional electric actuator (i.e., region 208) is generally largerthan the efficient operating envelope of a traditional hydraulicactuator (i.e., region 204).

Disclosed herein are various configurations and situations for use ofeach type of actuator based on the different characteristics andefficiencies of the hydraulic and electric actuators. Each type ofactuator may be used in a different joint of robotic system 100. Incontrast, both types of actuators may be coupled to the same joint ofrobotic system 100.

Consider a situation where hydraulic actuator 114 and electric actuator116 are coupled to different joints of robotic system 100. In an exampleimplementation, electric actuator 116 may be used, for example, whenrobotic system 100 (e.g., configured as a mobile robot) is walking orotherwise in motion for joints where loads are low and velocities arehigh. On the other hand, hydraulic actuator 114 may be used, forexample, when a mobile robot holds position and experiences higherloads. Consequently, some robot joints may be equipped with hydraulicactuator 114 and thereby configured for holding/supporting higher loadswhile other robot joints may be equipped with electric actuator 116 andthereby configured for higher speed operation.

For example, knee joints and hip joints in mobile robots may experiencehigh loads since such joints tend to support the body weight of therobot and experience shock loads as the robot moves. As a result, suchjoints may be equipped with a hydraulic actuator 114. On the other hand,for example, neck joints and wrist joints may frequently move withoutexperiencing high loads. In this case, such joints may be equipped withan electric actuator 116 to allow for efficient operation at highspeeds. Note that the example implementation described herein isprovided for illustration purposes only.

In a situation where both hydraulic actuator 114 and electric actuator116 are coupled to the same joint, operation of each actuator may varydepending on various factors. In one case, the electric actuator 116 maybe configured for constant operation (e.g., due to having a largerefficient operating envelope) while the hydraulic actuator 114 may beconfigured to activate and halt actuation depending on various factors.In another case, hydraulic actuator 114 may be configured for constantoperation while the electric actuator 116 may be configured to activateand halt actuation depending on various factors. In yet another case,the actuators may operate non-simultaneously and may be used forparticular operating conditions (i.e., switching modes). In this case,the hydraulic actuator may be used, for example, for supporting higherloads at a lower velocity while the electric actuator may be used, forexample, for higher velocity operation. In yet another case, bothactuators may operate at all times. Other examples and combinations mayalso be possible.

Various factors will now be introduced for controlling operation (e.g.,using controller 108) of the hydraulic actuator 114 and the electricactuator 116, where both actuators are coupled to the same joint inrobotic system 100. The various factors introduced below may beconsidered separately or may be considered in combination (e.g., eachfactor may be weighted differently). Other factors for controllingoperation of the hydraulic actuator 114 and the electric actuator 116may also be possible.

In an example implementation, operation of the hydraulic actuator 114and the electric actuator 116 may be based at least in part on a loadexperienced at the joint. The load may be determined using one or moresensor(s) 110, such as a load sensor positioned at or near the joint. Toillustrate, consider FIGS. 3 and 4 showing example methods for operationof the actuators based on the load applied at the joint. However, notethat the example methods may additionally or alternatively be used inthe context of operating efficiency, power loss, and/or operatingvelocity, among other examples.

FIG. 3 is a flowchart illustrating a method 300, according to an exampleembodiment. Additionally, FIG. 4 is a flowchart illustrating a method400, according to an example embodiment. Illustrative methods, such asmethods 300 and 400, may be carried out in whole or in part by acomponent or components in a robotic system, such as by the one or moreof the components of the robotic system 100 shown in FIG. 1. However, itshould be understood that example methods, such as method 300 and 400,may be carried out by other entities or combinations of entities (i.e.,by other computing devices and/or combinations of computing devices),without departing from the scope of the invention.

Method 300 may be operable in robotic system 100, where the electricactuator 116 may be configured for operation (e.g., constant operation),and where controller 108 may be configured to operate the hydraulicactuator 114 and the electric actuator 116 depending on the load appliedat the joint.

As shown by block 302, method 300 involves determining that a load isapplied at the joint. As discussed above, the load may be determinedusing one or more sensor(s) 110, such as a load sensor positioned at ornear the joint. Note that load measurements may be stored in datastorage 104.

As shown by block 304, method 300 involves determining that the load ismore than a threshold load. In one case, the threshold load may bepredetermined (e.g., based on known manufacture capabilities of thehydraulic actuator 114 and/or electric actuator 116). In another case,the threshold load may be updated over time based on, for example,historical load measurements and/or efficiency of operation foractuators 114 and 116. Other cases and examples may also be possible.

As shown by block 306, method 300 involves, based at least in part ondetermining that the load is more than the threshold load, activatingthe hydraulic actuator while maintaining operation of the electricactuator.

As discussed above, the efficient operating envelope of electricactuator 116 may be larger than the efficient operating envelope of ahydraulic actuator 114. As a result, the electric actuator 116 may beconfigured for constant operation regardless of the load applied at thejoint. However, in this case, the hydraulic actuator 114 may beactivated when the load applied at the joint exceeds the threshold load,thereby supporting higher loads.

In particular, as discussed above, electric actuator 116 may beinefficient while operating at lower speeds and applying a highertorque. In contrast, hydraulic actuator 114 may be most efficient whileoperating at lower speeds regardless of the applied force. As such,method 300 may lead to increased efficiency by removing (or reducing)the need for operation of the electric actuator 116 at its inefficientoperating envelope of high torque operation. Additionally, since thehydraulic actuator 114 is shock load tolerant compared to the electricactuator 116, method 300 may allow for reduction (or avoidance) ofdamages to the electric actuator 116 due to shock loads.

In one example, method 300 may be applicable in an example situationwhere the robotic system 100 is moving and the joint is a knee jointexperiencing high loads at times when the leg of the robotic systemmakes contact with the ground. In another example, method 300 may beapplicable where the robotic system 100 is a humanoid robot holding anobject in its robotic hand, where the joint is a part of the hand and isexperiencing a high load due to the object. Other example situations mayalso be possible.

Method 400 may be operable in robotic system 100. The hydraulic actuator114 may be configured to activate when a given load that is more than athreshold load amount is applied at the joint. On the other hand, theelectric actuator 116 may be configured to activate when a given loadthat is less than the threshold load amount is applied at the joint. Assuch, method 400 may be directed towards switching the mode of operationbetween operation of the hydraulic actuator 114 and operation of theelectric actuator 116 depending on the load applied at the joint.Switching the mode of operation may be carried out by controller 108.

As shown by block 402, method 400 involves determining that a first loadapplied at the joint is more than a threshold load amount. As discussedabove, the load may be determined using one or more sensor(s) 110, suchas a load sensor positioned at or near the joint.

As shown by block 404, method 400 involves, based at least in part ondetermining that the first load applied at the joint is more than thethreshold load amount, activating the hydraulic actuator and haltingactuation by the electric actuator.

As discussed above in association with FIG. 2, the electric actuator 116may be inefficient while operating at lower speeds and applying a highertorque. However, as illustrated in FIG. 2, the electric actuator 116 maybe efficient while applying a lower torque regardless of the operatingspeed. As such, blocks 402 and 404 of method 400 may be applicable, forexample, during lower speed operation such that actuation by theelectric actuator 116 is halted when a high load is applied at joint,thereby avoiding operation of the electric actuator 116 at itsinefficient operating envelope (i.e., region 210) and activating thehydraulic actuator 114 for supporting higher loads. Note, however, thatmethod 400 is not limited to lower speed operation.

An example situation for using method 400 (i.e., for blocks 402 and 404)may involve, for instance, the robotic system 100 (e.g., a humanoidrobot) in a stationary position and the joint being a knee jointexperiencing a higher load due gravity and due to the need to supportthe body of the robotic system 100. In this example situation, since thespeed of operation is low (or zero) it may be desirable to haltactuation by the electric actuator 116 since an electric actuator 116handling a higher load may require a large power input while resultingin little (or no) mechanical output, thereby leading to inefficiency.However, in this example situation, activation of the hydraulic actuator114 may be desirable since the hydraulic actuator 114 may require no (orlittle) additional power input to handle such a high and stationaryload. That is, once the desired amount of fluid enters the cylinder ofthe hydraulic actuator 114, the valve may be closed (e.g., given anelectrical signal from controller 108) such that a load may be supportedby the hydraulic actuator 114 without using much (or any) additionalpower. Other example situations may also be possible.

As shown by block 406, method 400 involves determining that a secondload applied at the joint is less than the threshold load amount. Notethat while method 400 presents the first and second loads as applied atthe joint in a particular order, the embodiments disclosed herein arenot limited to the loads applied at the joint in any particular order.

As shown by block 408, method 400 involves, based at least in part ondetermining that the second load applied at the joint is less than thethreshold load amount, activating the electric actuator and haltingactuation by the hydraulic actuator.

As discussed above in association with FIG. 2, the electric actuator 116may be most efficient while applying lower torque regardless of thespeed of operation. In contrast, the hydraulic actuator 114 may beinefficient while operating at higher speeds and applying a lower force.As such, blocks 406 and 408 of method 400 may be applicable, forexample, during higher speed operation such that actuation by thehydraulic actuator 114 is halted when a lower load is applied at joint,thereby avoiding operation of the hydraulic actuator 114 at itsinefficient operating envelope (i.e., region 206) and activating theelectric actuator 116 for efficiently supporting lower loads. Note,however, that method 400 is not limited to higher speed operation.

An example situation for using method 400 (i.e., for blocks 406 and 408)may involve, for instance, the robotic system 100 (e.g., a humanoidrobot) moving its hands and the joint (e.g., being a joint in the handof the robotic system 100) experiencing a lower load (e.g., when thehand is not holding any objects). In this example situation, since thespeed of operation is higher it may be desirable to halt actuation bythe hydraulic actuator 114 since a hydraulic actuator 114 operating at ahigher speed may require a larger power input for increasing the flowrate of the fluid in the hydraulic actuator 114, thereby leading toinefficiency. However, in this example situation, activation of theelectric actuator 116 may be desirable since the electric actuator 116may efficiently operate at higher speeds (while applying a lower torque)with a relatively lower power input. Other example situations may alsobe possible.

In an example implementation, the system may be configured to controloperation of the actuators 114 and 116 based on desired joint parametersrather than the threshold load considerations discussed above. Forinstance, such desired joint parameters may include a desired outputtorque/force of the joint, a desired output velocity of the joint, adesired acceleration of the joint, and/or a desired joint angle, amongother possibilities. More specifically, given a model of powerconsumption as well as a model of the actuators 114 and 116, the roboticsystem 100 may control operation of the actuators 114 and 116 to obtainthe desired joint parameters such that power dissipation in the systemis minimized (i.e., maximizing actuation efficiency).

To illustrate, consider FIG. 5 showing a flowchart 500 depicting amethod that may be used by the robotic system 100 to efficiently controloperation of the actuators 114 and 116 in order to obtain the desiredjoint parameters. Note that some steps of flowchart 500 may beeliminated and other steps may be added without departing from the scopeof the invention disclosed herein. Additionally, note that in otherimplementations the various steps of flowchart 500 may be carried out ina different order without departing from the scope of the inventiondisclosed herein.

Step 502 of flowchart 500 involves determining a total output torque tobe applied (i.e., a desired output torque/force of the joint) by thehydraulic actuator and the electric actuator and a total output velocityto be applied (i.e., a desired output velocity of the joint) by thehydraulic actuator 114 and the electric actuator 116.

The hydraulic actuator 114 and the electric actuator 116 may worksimultaneously (or separately) to drive a joint of the robotic system100. In particular, the actuators 114 and 116 may drive the joint toachieve certain joint parameters such as a total output torque and atotal output velocity. In this manner, the total output torque and thetotal output velocity cause particular movements of one or more robotlinks connected to the joint.

One or more components of the robotic system 100, such as processor(s)102 and/or controller 108, may be configured to determine a total outputtorque to be applied and a total output velocity to be applied. Forinstance, the controller 108 may obtain information related the currenttotal output torque and the current total output velocity. Additionally,the controller 108 may obtain environmental information from sensors(s)110. Given such environmental information, the controller 108 candetermine that the current total output torque and the current totaloutput velocity may need to be updated at a future point in time (e.g.,in 2 seconds). As a result, the controller 108 may determine a totaloutput torque to be applied and a total output velocity to be applied ata future point in time.

Consider an example scenario where the joint is part of a leg of therobotic system 100 (for simplification purposes, neglecting jointparameters of other joints in the system). In this example scenario, theenvironmental information may indicate there is an obstacle in the pathof the robotic system 100. The controller 108 may then determine thatthe robotic system 100 must slow down and change its path to avoid acollision with the obstacle. Slowing down may lead to the need for alower total output velocity of the joint and a higher total outputtorque, for instance, due to shock loads as the leg of the roboticsystem 100 contacts the ground. As such, the controller 108 maydetermine a total output torque to be applied and a total outputvelocity to be applied at a future point in time (e.g., at an estimatedtime when the leg of the robotic system 100 contacts the ground). Notethat the controller 108 may also determine other joint parameters suchas an angle to be applied (e.g., an angle between two robot linksconnected to the joint) as well as a total output acceleration (ordeceleration) to be applied, among others.

Step 504 of flowchart 500 involves, based at least in part on the totaloutput torque and the total output velocity, determining hydraulicoperating parameters and electric operating parameters such that powerdissipation of the hydraulic actuator 114 and power dissipation of theelectric actuator 116 is minimized.

Upon determination of the total output torque to be applied and thetotal output velocity to be applied, one or more components of therobotic system (e.g., processor(s) 102 and/or controller 108) maydetermine (e.g., compute) hydraulic operating parameters for thehydraulic actuator 114 and electric operating parameters for theelectric actuator 116. The hydraulic and electric operating parametersmay be computed such that total power dissipation of the actuators isminimized, thereby maximizing efficiency.

Such a computation may be treated as an optimization problem, amongother possibilities. For instance, the controller 108 may obtain programinstructions 106 from the data storage 104 that may include a formula(or a set of formulas) representing a particular relationship betweenthe total power dissipation of the actuators, the hydraulic and electricoperating parameters, the total output torque to be applied, and thetotal output velocity to be applied. Given a determined total outputtorque to be applied and a determined total output velocity to beapplied, the formula may be used to determine the hydraulic and electricoperating parameters such that the total power dissipation of theactuators (i.e., the power dissipation of the hydraulic actuator 114 inaddition to the power dissipation of the electric actuator 116) isminimized. Note that other computational factors may also include powersystem parameters (i.e., parameters of power source(s) 112), the currenttotal output torque, and the current total output velocity, amongothers.

Discussed below is an example simplified derivation for a set of exampleformulas that may be used to determine the hydraulic and electricoperating parameters such that the total power dissipation of theactuators is minimized. Note that the example simplified derivationbelow is discussed for illustration purposed only and should not be seenas limiting. Other example derivations and formulas may also be possiblewithout departing from the scope of the invention. Additionally, notethat one or more of the computational factors and assumptions discussedbelow may be removed while additional computational factors andassumptions may also be considered.

The example simplified derivation may follow a set of assumptions. Forinstance, an assumption can be made that the joint is driven by thehydraulic actuator 114 and the electric actuator 116 in parallel. Also,for the configuration of the hydraulic actuator 114, it may be assumedthat: (1) the hydraulic actuator 114 is one-sided (i.e., can only applyforce in one direction), (2) the pressure in the hydraulic actuator 114is controlled by a valve that can connect the hydraulic actuator 114 tosupply and/or return pressure lines, and (3) there is no flow limit inthe valve (i.e., the pressure drop across the valve is negligible evenat high flows). Additionally, it may be assumed that, for theconfigurations of the actuators 114 and 116, computational factors suchas friction, core losses, and idle losses (e.g., such as the cost ofhaving a motor controller circuit turned on) are negligible. Further, itmay be assumed that the only physical limits considered are on (1) thepressure in the hydraulic actuator 114 and (2) a fixed current limit inthe electric actuator 116. In particular, the pressure in the hydraulicactuator 114 cannot be negative, the pressure drop across the valve mustmatch the flow across the valve, and the flow is in the direction ofdeclining pressure.

Given the above assumptions, the example simplified derivation includesthe following model of the actuators 114 and 116. Consider a totaloutput velocity at the joint (ω). A relationship between the totaloutput velocity (ω) and the output velocity of the electric actuator 116(ω_(M)) may be based on the gear ratio of the electric actuator 116(G_(M)). In particular, the output velocity of the electric actuator 116(ω_(M)) may be a product of the gear ratio of the electric actuator 116(G_(M)) and the total output velocity (ω). i.e., (ω_(M))=(G_(M))*(ω).

Similarly, a relationship between the total output velocity (ω) and thepressurized fluid flow of the hydraulic actuator 114 (Q) may be based onthe effective gear ratio of the hydraulic actuator 114 (G_(H)). Inparticular, the pressurized fluid flow of the hydraulic actuator 114 (Q)may be a product of the effective gear ratio of the hydraulic actuator114 (G_(H)) and the total output velocity (ω). i.e., (Q)=(G_(H))*(ω).Note that the effective gear ratio of the hydraulic actuator 114 (G_(H))may be a function of the hydraulic actuator area and mechanicallinkages, among other functions, and may vary with position of thepiston.

Consider a total output torque at the joint (τ). The total output torqueat the joint (τ) may be a product of the torque produced by the electricactuator 116 (τ_(M)) and the gear ratio of the electric actuator 116(G_(M)) in addition to a product of the pressure drop in the hydraulicactuator 114 (P) and the effective gear ratio of the hydraulic actuator114 (G_(H)). i.e., (τ)=(G_(M))*(τ_(M))+(G_(H))*(P). Note that the totaloutput torque (τ) may include the torque needed to accelerate theelectric actuator 116 and the electric actuator 116 gearbox.

Given the above assumptions, power dissipation in the actuators 114 and116 can be modeled as follows. In particular, the following model ofpower dissipation includes resistive power dissipation of the electricactuator 116 (W_(E)) and hydraulic power dissipation (i.e., throttlinglosses) of the hydraulic actuator 114 (W_(H)). However, note that otherderivations may also consider other power losses in the system.

The torque produced by the electric actuator 116 (τ_(M)) may be aproduct of a torque constant of the electric actuator 116 (K_(T)) andthe current applied to the electric actuator 116 (I). i.e.,(τ_(M))=(K_(T))*(I). Additionally, the resistive power dissipation ofthe electric actuator 116 (W_(E)) may be a product the resistance of theelectric actuator 116 (R) and the current applied to the electricactuator 116 (I) squared. i.e., (W_(E))=(I)²*(R). As such, the resistivepower dissipation of the electric actuator 116 (W_(E)) may be determinedas follows: (W_(E))=(τ_(M)/K_(T))²*(R)

In order to determine the hydraulic power dissipation of the hydraulicactuator 114 (W_(H)), the pressure in the pressure rail (P_(S)) to whichthe hydraulic actuator 114 is connected must be considered. In anexample hydraulic system flow follows pressure. In particular, if thepressurized fluid flow of the hydraulic actuator 114 (Q) is larger thanzero (Q>0) then the pressure (P_(S)) may be larger than the pressuredrop in the hydraulic actuator 114 (P). In contrast, if the pressurizedfluid flow of the hydraulic actuator 114 (Q) is smaller than zero (Q<0)then the pressure (P_(S)) may be smaller than the pressure drop in thehydraulic actuator 114 (P). As such, the pressure (P_(S)) can beselected as supply pressure (P_(supply)) (i.e., high pressure) or returnpressure (P_(return)) (i.e., low pressure). Note that (P_(S)) may beassumed or selected to be fixed.

The hydraulic power dissipation of the hydraulic actuator 114 (W_(H))may be determined as a product of the pressurized fluid flow of thehydraulic actuator 114 (Q) as well as the difference between thepressure in the pressure rail (P_(S)) and the pressure drop in thehydraulic actuator 114 (P). i.e.,(W_(H))=(Q)*((P_(S))−(P))=((G_(H))*(ω))*((P_(S))−(P)).

Given the resistive power dissipation of the electric actuator 116(W_(E)) and hydraulic power dissipation of the hydraulic actuator 114(W_(H)), the total power dissipation (W_(total)) can be determined. Inparticular, the total power dissipation total, (W_(total)) can bedetermined by adding the resistive power dissipation of the electricactuator 116 (W_(E)) to the hydraulic power dissipation of the hydraulicactuator 114 (W_(H)). i.e.,(W_(total))=(W_(H))+(W_(E))=[(τ_(M)/K_(T))²*(R)]+[((G_(H))*(ω))*((P_(S))−(P))]

Given the above assumptions and formulas, various optimizationtechniques (currently known or developed in the future) can be used tomaximize efficiency of the system. In particular, given a desired outputtorque (i.e., a total output torque (τ) to be applied) and a desiredoutput velocity (i.e., a total output velocity (ω) to be applied), theoptimization techniques may be used to determine hydraulic operatingparameters (e.g., (Q), (P), and (P_(S))), electric operating parameters(e.g., (τ_(M)) and (ω_(M))), and power system parameters (e.g., (I))such that the total power dissipation total, (W_(total)) is minimized.

Note that some of the computational factors discussed above may beconstant (e.g., (G_(M)), (G_(H)), (K_(T)), and (R)). Additionally, notethat other hydraulic operating parameters not discussed above mayinclude the pump motor temperature, chamber pressures, and position ofthe piston. Further, note that another electric operating parameter notdiscussed above may include the electric actuator temperature. Yetfurther, note that other power system parameter not discussed above mayinclude (assuming the power source 112 is a battery) voltage, state ofcharge, and battery temperature. Other parameters and computationalfactors may also be possible.

Step 506A of flowchart 500 involves determining whether the hydraulicoperating parameters indicate activation of the hydraulic actuator 114.Additionally, step 506B of flowchart 500 involves determining whetherthe electric operating parameters indicate activation of the electricactuator 116.

To illustrate, consider FIG. 6 showing a joint controller 602. In onecase, joint controller 602 may be part of (or the same as) controller108. In another case, joint controller 602 may be separate fromcontroller 108 and may be positioned, for example, at a joint of therobotic system 100. Additionally, in some implementations, jointcontroller 602 may carry out the optimization techniques discussedabove. In another implementation, other components of the robotic system100 (e.g., controller 108 and/or processor(s) 102) may carry out theoptimization techniques discussed above and may subsequently send, tojoint controller 602, information related to the determined parameters(as shown under “input” in FIG. 6). Other implementations may also bepossible.

Upon receiving information related to the determination of the hydraulicoperating parameters, the joint controller 602 may determine whether thehydraulic operating parameters indicate activation of the hydraulicactuator 114. As illustrated by step 508A, if the joint controller 602determines that the hydraulic operating parameters indicate activationof the hydraulic actuator 114 (e.g., pressurized fluid flow (Q) isdetermined to be a non-zero value), the joint controller 602 may sendhydraulic system/actuator commands (as shown under “output” in FIG. 6)to activate the hydraulic actuator 114 for operation at the determinedhydraulic operating parameters. Such hydraulic system/actuator commandsmay include, for example, mode selection for hydraulic actuation (e.g.,selecting direction of motion and/or force level) as well as metering(e.g., control valve port opening). Other commands may also be possible.

Note that if the hydraulic actuator 114 is already configured foroperation then the commands may include an indication to maintainoperation of the hydraulic actuator 114 while operating the hydraulicactuator 114 at the determined hydraulic operating parameters.

In contrast, as illustrated by step 510A, if the joint controller 602determines that the hydraulic operating parameters indicate haltingactuation by the hydraulic actuator 114 (e.g., pressurized fluid flow(Q) is determined to be a zero value), the joint controller 602 may sendhydraulic system/actuator commands to halt actuation by the hydraulicactuator 114.

Note that if the actuation by the hydraulic actuator 114 has alreadybeen halted (i.e., not configured for operation), then the commands mayinclude an indication to continue halting actuation by the hydraulicactuator 114.

As mentioned above, step 506B of flowchart 500 involves determiningwhether the electric operating parameters indicate activation of theelectric actuator 116. Upon receiving information related to thedetermination of the electric operating parameters, the joint controller602 may determine whether the electric operating parameters indicateactivation of the electric actuator 116. As illustrated by step 508B, ifthe joint controller 602 determines that the electric operatingparameters indicate activation of the electric actuator 114 (e.g.,output velocity of the electric actuator 116 (ω_(M)) is determined to bea non-zero value), the joint controller 602 may send electricsystem/actuator commands (as shown under “output” in FIG. 6) to activatethe electric actuator 116 for operation at the determined electricoperating parameters. Such electric system/actuator commands mayinclude, for example, current, torque, speed, and/or position commands.Other commands may also be possible.

Note that if the electric actuator 116 is already configured foroperation then the commands may include an indication to maintainoperation of the electric actuator 116 while operating the electricactuator 116 at the determined electric operating parameters.

In contrast, as illustrated by step 510B, if the joint controller 602determines that the electric operating parameters indicate haltingactuation by the electric actuator 116 (e.g., output velocity of theelectric actuator 116 (ω_(M)) is determined to be a zero value), thejoint controller 602 may send electric system/actuator commands to haltactuation by the electric actuator 116.

Note that if the actuation by the electric actuator 116 has already beenhalted (i.e., not configured for operation), then the commands mayinclude an indication to continue halting actuation by the electricactuator 116.

In this manner, the joint controller 602 may receive information relatedto current joint parameters (e.g., current total output torque andcurrent total output velocity), desired joint parameters (e.g., totaloutput torque to be applied and total output velocity to be applied),hydraulic operating parameters, electric operating parameters, and powersystem operating parameters. Given such parameters, the joint controller602 may send commands (e.g., to the actuators 114 and 116) such that thejoint parameters transition from operating at the current jointparameters to operating at the desired joint parameters at maximumefficiency (i.e., minimizing total power dissipation).

Reference will now be made to additional factors that may be consideredfor operation (i.e., activation and halting actuation) of the actuators114 and 116. Such additional factors may be considered in addition oralternatively to the considerations discussed above in association withmethods 300 and 400 as well as flowchart 500. To illustrate theadditional factors, consider FIG. 7A showing an example robot 700. Notethat robot 700 may include any of the components of robotic system 100as well as joint controller 602. Also, note that methods 300 and 400 aswell as flowchart 500 discussed above may be implemented in robot 700.

As shown in FIG. 7A, robot 700 is a quadrupedal robot with four legs702A-D. Robot 700 is shown as carrying several objects 704. Note thatwhile the following factors are discussed in the context of thequadrupedal robot 700, the embodiments may be applied to any type ofrobotic system.

FIG. 7B shows a side view of robot 700. Leg 702A (as well as legs 702B-Dnot shown in FIG. 7B) includes thigh member 708 and shin member 710connected at joint 706. Hydraulic actuator 114 and electric actuator 116are coupled to joint 706 to cause movement of shin member 710 aboutjoint 706. Foot 712 is shown as connected to the bottom of shin member710 and is configured to contact the ground during movement of the robot700.

Consider FIG. 8A showing the side view of robot 700 first illustrated inFIG. 7B, where the robot 700 is traveling in the direction illustratedin FIG. 8A. Note that the electric actuator 116 is not shown in FIG. 8A.Additionally, FIG. 8A shows the “foot path” of leg 702A over time. Inparticular, the “foot path” shows the travel path of foot 712 over timeincluding contact points A-D indicating the points where foot 712contacts the ground.

FIG. 8A illustrates a point in time when leg 702A is “in the air” (i.e.,does not contact the ground). A sensor, such as a force sensor, may bepositioned on the leg 702A (e.g., on foot 712) and may be configured todetermine that the leg 702A is not in contact with the ground (e.g.,given force data from the force sensor indicating no force). Based onsuch a determination, the system may activate the electric actuator 116and halt actuation by the hydraulic actuator 114. This may be desirablesince a higher speed of operation is taking place with a lower loadexperienced at the joint, thereby allowing for efficient use of theelectric actuator 116. Note that the electric actuator 116 may remainactivated as long as the leg 702A is “in the air”.

Consider FIG. 8B showing the side view of robot 700 as first illustratedby FIG. 8A but at a later point in time. As illustrated by FIG. 8B, foot712 contacts the ground (i.e., at contact point B) at the later point intime. In this case, the force sensor may be configured to determine thatthe leg 702A contacts the ground (e.g., given force data from the forcesensor indicating a threshold amount of force). Based on determiningthat the leg 702A contacts the ground, the system may activate thehydraulic actuator 114 and maintain operation of the electric actuator116. This may be desirable since a higher load is applied at joint 706,thereby allowing for efficient use of the hydraulic actuator 114. Notethat the hydraulic actuator 114 may remain activated as long as the leg702A is in contact with the ground. Additionally, note that actuation bythe electric actuator 116 may be halted (while maintaining operation ofthe hydraulic actuator 114) when the joint 706 is holding the robot 700mass against gravity (i.e., supporting the body weight of the robot700).

In a further aspect, the system is configured to determine when the leg702A loses (or about to lose) contact with the ground. Such adetermination can be made, for example, given the force data from theforce sensor transitioning from indicating the threshold amount of forceto indicating no force. Based on determining that the leg 702A loses (orabout to lose) contact with the ground, the system may activate theelectric actuator 116 and halt actuation by the hydraulic actuator 114.

In yet a further aspect, consider again FIG. 8A showing the leg 702A “inthe air”. In some cases, the system may be configured to estimate (orcalculate) the point in time (and/or location) of contact with theground. For example, robot 700 may include a proximity sensor positionon the leg 702A (e.g., on foot 712) and configured to determine adistance between the leg and the ground (e.g., given a particular returnsignal of electromagnetic radiation emitted from the proximity sensor).Additionally, robot 700 may also include a motion sensor (e.g.,positioned at joint 706) configured to determine a velocity for themovement of the leg 702A.

Given proximity data from the proximity sensor and velocity data fromthe motion sensor, the system can estimate (or calculate) the point intime (and/or location) of contact with the ground. Based on determiningthat the leg will contact the ground at the calculated time, the systemmay activate the hydraulic actuator 114 and maintain operation of theelectric actuator 116. Such operation of the actuators may occur inadvance (i.e., before the calculated time) or at the calculated time.

To further illustrate the sequence of events discussed above inassociation with FIGS. 8A-8B, consider FIG. 9 showing an example outputforce/torque profile of the knee joint 706 over time. In particular,FIG. 9 shows a desired output force profile over time and illustrateshow a hydraulic actuation in addition to electric actuation may be usedto meet the desired force profile. Note that the example force profileis shown for illustration purposes only and is not meant to be limiting.

Region A of FIG. 9 illustrates the point in time when leg 702A is “inthe air” (i.e., does not contact the ground). As mentioned above, robot700 may determine that the leg 702A is not in contact with the ground.Based on such a determination, the system may activate the electricactuator 116 and halt actuation by the hydraulic actuator 114. Asillustrates in region A, the operating range of the electric actuator116 may be shifted in order to meet the desired force profile while theleg 702A is “in the air”. In particular, the output force of theelectric actuator 116 is configured to match the desired force profileof the joint 706 while actuation by the hydraulic actuator 114 ishalted.

Region B of FIG. 9 illustrates the point in time when the leg 702Acontacts the ground at the later point in time. In particular, region Billustrates the desired force profile when the knee 706 experiences ahigh load while contacting the ground, such as a shock load. Asmentioned above, based on determining that the leg 702A contacts theground, the system may activate the hydraulic actuator 114 and maintainoperation of the electric actuator 116. As illustrates in region B, thehydraulic actuator 114 may be activated (e.g., operating range shiftedwith a metering valve) to assist the electric actuator 116 to meet thedesired force profile. More specifically, as illustrated, the hydraulicactuator 114 may provide discrete force levels while the electricactuator 116 may be used for sufficient force tracking by supplying thesufficient amount of additional force necessary to meet the desiredforce profile.

Region C of FIG. 9 illustrates the point in time when leg 702A contactsthe ground and when the joint 706 is holding the robot 700 mass againstgravity. As mentioned above, when the joint 706 is holding the robot 700mass against gravity, actuation by the electric actuator 116 may behalted while maintaining operation of the hydraulic actuator 114. Asillustrated in region C, in order to meet the desired force profile whenthe joint 706 is holding the robot 700 mass against gravity, a discretelevel force produced by the hydraulic actuator 114 (e.g., using binaryvalve control (on/off)) may be sufficient without actuation by theelectric actuator 116.

Region D of FIG. 9 illustrates the point in time when the leg 702A losescontact with the ground. As mentioned above, based on determining thatthe leg 702A loses contact with the ground, the system may activate theelectric actuator 116 and halt actuation by the hydraulic actuator 114.As illustrated in region D, operation of the actuators is similar to theoperation of the actuators as discussed above in association with regionA. In particular, the output force of the electric actuator 116 isconfigured to match the desired force profile of the joint 706 whileactuation by the hydraulic actuator 114 is halted.

In yet a further aspect, operation of the actuators may be based onrequired velocity for movement of the leg 702A. For example, robot 700may want to travel at a particular speed, thereby requiring a particularvelocity for movement of leg 702A (or particular members of leg 702A).If the required velocity exceeds a threshold velocity, the system mayactivate the electric actuator 116 and halt actuation by the hydraulicactuator 114. This may be desirable since, as discussed above inassociation with FIG. 2, hydraulic actuator 114 may inefficient athigher speeds while the electric actuator 116 may be efficient at higherspeeds.

In contrast, if the required velocity is lower than the thresholdvelocity, the system may activate the hydraulic actuator 114 and haltactuation by the electric actuator 116. This may be desirable since, asdiscussed above in association with FIG. 2, the hydraulic actuator 114may be efficient at lower speeds regardless of the applied force whilethe electric actuator 116 may be efficient at lower speeds only when alower torque is applied. Note that, in some cases, if the requiredvelocity is lower than the threshold velocity then both actuators may beactivated. Other examples and combinations may also be possible.

In an example embodiment, operation of the actuators may also be basedon determination of shock loads. In particular, shock loads may beevaluated (e.g., using load data from the load sensor) as a larger loadexperienced over a shorter period of time. As such, based on determiningthat a shock load is applied at the joint, the system may activate (ormaintain operation of) the hydraulic actuator 114 and activate (ormaintain operation of) the electric actuator 116.

In one example, such shock loads may be experienced, for example, whenleg 702A contacts the ground at a particular speed. In another example,such shock loads may be experienced when a robotic system 100inadvertently loses control and falls to the ground, thereby resultingin a large impact with the ground. In this example, the hydraulicactuator 114 may be activated in response to a determination that therobotic system 100 has lost control and is about to hit the ground. Sucha determination can be made, for example, using proximity sensing and/orshock load sensing as discussed above as well as information receivedfrom controller 108 indicating a loss of balance for the robotic system100.

In an example embodiment, operation of the actuators may also be basedon a determination that a particular part (e.g., hand or a joint) of therobotic system 100 is static and/or that the robotic system 100 isstationary. In one example, a determination can be made that the roboticsystem 100 is stationary. Based on such a determination, the system mayactivate the hydraulic actuator 114 and halt actuation by the electricactuator 116. In another example, where the joint is part of a hand ofthe robotic system 100, a determination can be made that the hand (orthe joint) is static (i.e., not moving). Based on a determination thatthe hand is static, the system may activate the hydraulic actuator 114and halt actuation by the electric actuator 116. In another case, bothactuators may be activated in response to such a determination. Notethat such a determination can be applied in the context of any part ofthe robotic system 100.

In an example embodiment, operation of the actuators may also be basedon a determination that one or more objects (e.g., objects 704 in FIG.7A) are carried by the robotic system 100 (e.g., supported by a joint ofthe robotic system 100). For example, in the case of a humanoid robot,such an object may be carried in the hand of the humanoid robot (e.g.,while the humanoid robot is stationary or while the humanoid robot is inmotion). A determination that one or more objects are carried by therobotic system 100 can be made using one or more sensors 110, such as aload sensor and/or a touch sensor, among others. Based on adetermination that one or more objects are carried by the robotic system100 (and/or supported by the joint of the robotic system), the systemmay activate the hydraulic actuator 114 and halt actuation by theelectric actuator 116. In another case, both actuators may be activatedin response to such a determination. Other examples and combinations mayalso be possible.

A hydraulic actuator 114 and an electric actuator 116 positioned on thesame joint may additionally remove the need for clutches and brakes onthe electric actuator 116. For example, consider a situation when ahumanoid robot holds a box in its hand. If the joints in the humanoidrobot's arms are only equipped with electric actuators, then power maybe drained while the humanoid robot holds the box. In such cases, theelectric actuator 116 may be equipped with clutches and/or breaks tolock out the electric actuator 116 gearbox such that no (or little)additional power input is needed to hold the box (i.e., the load).However, the presence of a hydraulic actuator 114 in addition to theelectric actuator 116 allows the hydraulic actuator 114 to hold the loadwith no (or minimal) power drain, thereby removing the need for clutchesand/or brakes.

Further, a hydraulic actuator 114 and an electric actuator 116positioned on the same joint may allow for high frequency controladjustments by the electric actuator 116. In particular, the electricactuator 116 may be used to add control fidelity to the discrete levelswitching of the hydraulic actuator 114, thereby reducing throttlinglosses and reducing bandwidth requirements for valving in the hydraulicactuator 114. More specifically, the hydraulic actuator 114 may beconnected to a discretized multi-pressure rail system and an on/offvalve control such that discrete force levels are produced. Whereas, theelectric actuator 116 may supply sufficient force to “smooth out” thediscrete force level produced by the hydraulic actuator 114 so that thedesired force profile is met efficiently.

To illustrate, consider FIG. 10 showing another desired force profileover time. Note that the force profile shown in FIG. 10 is shown forillustration purposes only and is not meant to be limiting. As shown inFIG. 10, the hydraulic actuator 114 is configured to apply discreteforce levels such that the discrete force level are as close as possibleto meeting the desired force profile. The electric actuator 116 may thenbe used to provide any necessary actuation (e.g., in addition to thehydraulic actuation) to track the desired force profile whilemaintaining maximal efficiency of the system.

III. CONCLUSION

The present disclosure is not to be limited in terms of the particularembodiments described in this application, which are intended asillustrations of various aspects. Many modifications and variations canbe made without departing from its spirit and scope, as will be apparentto those skilled in the art. Functionally equivalent methods andapparatuses within the scope of the disclosure, in addition to thoseenumerated herein, will be apparent to those skilled in the art from theforegoing descriptions. Such modifications and variations are intendedto fall within the scope of the appended claims.

The above detailed description describes various features and functionsof the disclosed systems, devices, and methods with reference to theaccompanying figures. In the figures, similar symbols typically identifysimilar components, unless context dictates otherwise. The exampleembodiments described herein and in the figures are not meant to belimiting. Other embodiments can be utilized, and other changes can bemade, without departing from the spirit or scope of the subject matterpresented herein. It will be readily understood that the aspects of thepresent disclosure, as generally described herein, and illustrated inthe figures, can be arranged, substituted, combined, separated, anddesigned in a wide variety of different configurations, all of which areexplicitly contemplated herein.

The particular arrangements shown in the figures should not be viewed aslimiting. It should be understood that other embodiments can includemore or less of each element shown in a given figure. Further, some ofthe illustrated elements can be combined or omitted. Yet further, anexample embodiment can include elements that are not illustrated in thefigures.

While various aspects and embodiments have been disclosed herein, otheraspects and embodiments will be apparent to those skilled in the art.The various aspects and embodiments disclosed herein are for purposes ofillustration and are not intended to be limiting, with the true scopebeing indicated by the following claims.

We claim:
 1. A system comprising: a hydraulic actuator coupled to ajoint of a mobile robotic device; an electric actuator coupled to thejoint of the mobile robotic device, wherein the electric actuator isconfigured for operation; and a controller configured to operate thehydraulic actuator and the electric actuator, wherein the controller isfurther configured to: determine a total output torque to be applied bythe hydraulic actuator and the electric actuator and a total outputvelocity to be applied by the hydraulic actuator and the electricactuator; based at least in part on the total output torque and thetotal output velocity, determine hydraulic operating parameters andelectric operating parameters such that power dissipation of thehydraulic actuator and power dissipation of the electric actuator isminimized; determine that the hydraulic operating parameters indicateactivation of the hydraulic actuator; and based at least in part ondetermining that the hydraulic operating parameters indicate activationof the hydraulic actuator, activate the hydraulic actuator for operationat the determined hydraulic operating parameters while operating theelectric actuator at the determined electric operating parameters. 2.The system of claim 1, wherein the controller is further configured to:determine that the joint is static; and based at least in part ondetermining that the joint is static, activate the hydraulic actuatorand halt actuation by the electric actuator.
 3. The system of claim 1,wherein the controller is further configured to: determine that anobject is being supported by the joint; and based at least in part ondetermining that the object is being supported by the joint, activatethe hydraulic actuator and halt actuation by the electric actuator. 4.The system of claim 1, wherein the joint is part of a leg of the mobilerobotic device, and wherein the hydraulic actuator and the electricactuator are configured to cause movement of the leg while the mobilerobotic device is in motion.
 5. The system of claim 4, wherein thecontroller is further configured to: determine, while the mobile roboticdevice is in motion, that the leg contacts a ground; and based at leastin part on determining that the leg contacts the ground, activate thehydraulic actuator and maintain operation of the electric actuator. 6.The system of claim 5, further comprising: a force sensor positioned onthe leg, wherein determining that the leg contacts the ground comprisesdetermining that the leg contacts the ground based at least in part onforce data received from the force sensor.
 7. The system of claim 5,wherein the controller is further configured to: determine, while themobile robotic device is in motion, that the leg loses contact with theground; and based at least in part on determining that that the legloses contact with the ground, halt actuation by the hydraulic actuatorand maintain operation of the electric actuator.
 8. The system of claim4, wherein the controller is further configured to: determine, while themobile robotic device is in motion, that the leg will contact a groundat a calculated time; and based at least in part on determining that theleg will contact the ground at the calculated time, activate thehydraulic actuator before the calculated time and maintain operation ofthe electric actuator.
 9. The system of claim 8, further comprising: aproximity sensor configured to determine a distance between the leg andthe ground; and a motion sensor configured to determine a velocity forthe movement of the leg, wherein determining that the leg will contactthe ground at the calculated time comprises determining that the legwill contact the ground at the calculated time based at least in part on(i) proximity data received from the proximity sensor and (ii) velocitydata received from the motion sensor.
 10. The system of claim 1, whereinthe controller is further configured to: determine that a shock load isapplied at the joint; and based at least in part on determining that ashock load is applied at the joint, activate the hydraulic actuator andmaintain operation of the electric actuator.
 11. A system comprising: ahydraulic actuator coupled to a joint of a mobile robotic device,wherein the hydraulic actuator is configured for operation; an electricactuator coupled to the joint of the mobile robotic device; and acontroller configured to operate the hydraulic actuator and the electricactuator, wherein the controller is further configured to: determine atotal output torque to be applied by the hydraulic actuator and theelectric actuator and a total output velocity to be applied by thehydraulic actuator and the electric actuator; based at least in part onthe total output torque and the total output velocity, determinehydraulic operating parameters and electric operating parameters suchthat power dissipation of the hydraulic actuator and power dissipationof the electric actuator is minimized; determine that the electricoperating parameters indicate activation of the electric actuator; andbased at least in part on determining that the electric operatingparameters indicate activation of the electric actuator, activate theelectric actuator for operation at the determined electric operatingparameters while operating the hydraulic actuator at the determinedhydraulic operating parameters.
 12. The system of claim 11, wherein thehydraulic actuator and the electric actuator are connected to a commonpower source.
 13. The system of claim 11, wherein the hydraulic actuatorand the electric actuator are each connected to different power sources.14. The system of claim 11, wherein the joint is part of a hand of themobile robotic device, and wherein the hydraulic actuator and theelectric actuator are configured to cause movement of the hand.
 15. Thesystem of claim 14, wherein the controller is further configured to:determine that the hand of the mobile robotic device is static; andbased at least in part on determining that the hand of the mobilerobotic device is static, activate the hydraulic actuator and haltactuation by the electric actuator.
 16. A method operable in a roboticsystem that includes a hydraulic actuator and an electric actuator bothcoupled to a joint of the robotic system, the method comprising:determining, by a controller, a total output torque to be applied by thehydraulic actuator and the electric actuator and a total output velocityto be applied by the hydraulic actuator and the electric actuator; basedat least in part on the total output torque and the total outputvelocity, determining, by the controller, hydraulic operating parametersand electric operating parameters such that power dissipation of thehydraulic actuator and power dissipation of the electric actuator isminimized; determining, by the controller, that the hydraulic operatingparameters indicate activation of the hydraulic actuator and that theelectric operating parameters indicate activation of the electricactuator; and based at least in part on determining that the hydraulicoperating parameters indicate activation of the hydraulic actuator andthat the electric operating parameters indicate activation of theelectric actuator, activating the hydraulic actuator for operation atthe determined hydraulic operating parameters activating the electricactuator for operation at the determined electric operating parameters.17. The method of claim 16, wherein the robotic system is a quadrupedalrobot.
 18. The method of claim 16, wherein the joint is part of a leg ofthe robotic system, and wherein the hydraulic actuator and the electricactuator are configured to cause movement of the leg while the roboticsystem is in motion.
 19. The method of claim 18, further comprising:determining, while the robotic system is in motion, that movement of theleg requires movement of the leg at a first velocity; determining thatthe first velocity is higher than a threshold velocity; and based atleast in part on determining that the first velocity is higher than thethreshold velocity, halting actuation by the hydraulic actuator andactivating the electric actuator.
 20. The method of claim 19, furthercomprising: determining, while the robotic system is in motion, thatmovement of the leg requires movement of the leg at a second velocity;determining that the second velocity is less than the thresholdvelocity; and based at least in part on determining that the secondvelocity is less than the threshold velocity, activating the hydraulicactuator and halting actuation by the electric actuator.